package 
{
	
	import mx.controls.treeClasses.*;
	import mx.collections.*;
	
	public class CustomTreeItemRenderer extends TreeItemRenderer
	{
		public function CustomTreeItemRenderer() 
		{
			super();
			mouseEnabled = false;			
		}
		
		override public function set data(value:Object):void
		{
			if(value != null)
			{ 
				super.data = value;
				if(TreeListData(super.listData).hasChildren)
				{
					setStyle("color", 0x660099);
					setStyle("fontWeight", 'bold');
				}
				else
				{
					setStyle("color", 0x000000);
					setStyle("fontWeight", 'normal');
				}
			}
		}	 
		
		override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
		{
			super.updateDisplayList(unscaledWidth, unscaledHeight);
			if(super.data)
			{
				if(TreeListData(super.listData).hasChildren)
				{
					var tmp:XMLList = new XMLList(TreeListData(super.listData).item);
					var myStr:int = tmp[0].children().length();
					super.label.text =  TreeListData(super.listData).label + "(" + myStr + " objects)";
				}
			}
		}
	}
}